package com.modouyu.demo212.demo212;

import lombok.extern.slf4j.Slf4j;
import org.springframework.boot.context.event.ApplicationPreparedEvent;
import org.springframework.context.ApplicationListener;

/**
 * @Auther: modouyu
 * @Date: 2018/7/10 08:31
 * @Description:
 *  spring boot上下文context创建完成，但此时spring中的bean是没有完全加载完成的
 *
 *  上下文context已经准备完毕 ，可以通过ApplicationPreparedEvent获取到ConfigurableApplicationContext实例对象。
 *  ConfigurableApplicationContext类继承ApplicationContext类，但需要注意这个时候spring容器中的bean还没有被完全的加载，
 *  因此如果通过ConfigurableApplicationContext获取bean会报错的
 *
 *  获取到上下文之后，可以将其注入到其他类中，毕竟ConfigurableApplicationContext为引用类型
 *
 * @Email: yangcb@daochunfin.com
 */
@Slf4j
public class ApplicationPreparedEventListener implements ApplicationListener<ApplicationPreparedEvent> {
    @Override
    public void onApplicationEvent(ApplicationPreparedEvent applicationPreparedEvent) {
        log.info("......ApplicationPreparedEvent......");
    }
}
